package ModelLayer;


/**
 * The Person class is meant for handeling the various scenarios involving Persons, such as adding
 * editing, removing and getting Person information.
 * 
 * @author (grp b) 
 * @version (v0.1)
 */
public class Person
{
    // instance variables
    private long id;
    private String firstName;
    private String surName;
    private String address;
    private String zip;
    private String town;
    private String phone;

    /**
     * Constructor for objects of class Person
     */
    public Person(long id, String firstName, String surName, String address, String zip, String town, String phone)
    {
        // initialise instance variables
        this.id = id;
        this.firstName = firstName;
        this.surName = surName;
        this.address = address;
        this.zip = zip;
        this.town = town;
        this.phone = phone;
    }

    /**
     * Set method for First name of the Person.
     * 
     * @param String firstName sets the First name of the person.
     */
    public void setFirstName(String firstName)
    {
        this.firstName = firstName;
    }
    
    /**
     * Get method for first name of the person.
     * 
     * @return the firstName attribute value.
     */
    
    public String getFirstName()
    {
        return firstName;
    }
    
    
    /**
     * Set method for Sur name of the Person.
     * 
     * @param String surName sets the Sur Name of the person.
     */ 
    public void setSurName(String surName)
    {
        this.surName = surName;
    }
    
    /**
     * Get method for sur name of the person.
     * 
     * @return the surName attribute value.
     */
    
    public String getSurName()
    {
        return surName;
    }
    
    
    /**
     * Set method for address of the Person.
     * 
     * @param String address sets the address of the person.
     */
    public void setAddress(String address)
    {
        this.address = address;
    }
    
    /**
     * Get method for the address of the person.
     * 
     * @return the address attribute value.
     */
    
    public String getAddress()
    {
        return address;
    }
    
    
    /**
     * Set method for the Zip code of the Person.
     * 
     * @param String zip sets Zip code of the Person.
     */
    public void setZip(String zip)
    {
        this.zip = zip;
    }
    
    /**
     * Get method for the zip code of the person.
     * 
     * @return the zip attribute value.
     */
    
    public String getZip()
    {
        return zip;
    }

    /**
     * Set method for Town of the Person.
     * 
     * @param String Town sets the town attribute of the Person.
     */
    public void setTown(String town)
    {
        this.town = town;
    }
    
    /**
     * Get method for the town the person lives in.
     * 
     * @return the town attribute value.
     */
    
    public String getTown()
    {
        return town;
    }
    
    /**
     * Set method for the Phone number beloning to a Person.
     * 
     * @param String Phone sets the phone number.
     */
    public void setPhone(String phone)
    {
        this.phone = phone;
    }
    
    /**
     * Get method for Phone number of the person.
     * 
     * @return the phone attribute value.
     */
    
    public String getPhone()
    {
        return phone;
    }
    
    
    /**
     * Get method for the ID of the person.
     * 
     * @return the ID attribute value.
     */
    
    public long getId()
    {
        return id;
    }
}
